package sort;

import java.util.Arrays;

/**
 * 选择排序
 */
public class SellectionSort {
    public static void main(String[] args) {
        int[] a = {344,656,54,324,12,3445,6566,546};
        System.out.println(Arrays.toString(a));
        sort(a);
        System.out.println(Arrays.toString(a));
    }

    /*
        1. i循环，范围 0 到 < a.length-1
        2. 最小值位置下标min定位到i位置（假设i位置最小）
        3. j循环，范围 i+1 到 < a.length
        4. j循环中，比较 j位置值<min位置值
        5. 在j位置找到了更小值，那么把min下标定位到j位置
        6. 最小值交换到前面的i位置
     */
    private static void sort(int[] a){
        for (int i = 0; i < a.length-1; i++) {
            int min = i;
            for (int j = i+1; j < a.length; j++) {
                if (a[j] < a[min]){
                    min = j;
                }
            }
            int tem = a[i];
            a[i] = a[min];
            a[min] = tem;
        }

    }
}
